如何在OpenGL中制作2D动画? | 您所在的位置:网站首页 › opengl 2d动画 › 如何在OpenGL中制作2D动画? |
简而言之,您可以通过修改模型视图矩阵来移动对象。这可以通过几种方式来完成,这取决于您的编码偏好和可用的opengl驱动程序版本。 以下是一些部分代码,可以帮助您开始正确的方向: 以下代码在Opengl 3.0+中已被弃用(但即便如此,它仍然可以通过兼容性配置文件获得)。 // you'll need a game loop to make some opengl calls each frame while(!done) { // clear color buffers, depth buffers, etc initOpenglFrame(); glPushMatrixf(); glTranslatef(obj->getX(), obj->getY(), obj->getZ()); obj->draw(); glPopMatrixf(); // move the object 0.01 units to the left each tick obj->setX(obj->getX() + 0.01); // flush, swap buffers, etc finishOpenglFrame(); }对于OpenGL 3.0及更高版本,glPushMatrixf()、glPopMatrixf()、glTranslatef()和类似的固定函数管道接口都已弃用。如果您需要使用OpenGL 3.0或更高版本,您将希望执行相同类型的解决方案,但您将需要自己的矩阵实现和矩阵堆栈。我认为这种讨论超出了你的问题的范围。 要进一步阅读,并开始使用OpenGL,我建议您查看nehe.gamedev.net。如果你想开始使用OpenGL3.x,那么我建议你购买OpenGL Superbible第5版。很棒的书! |
CopyRight 2018-2019 实验室设备网 版权所有 |